Glue 1.0
description
Glue is an advanced sticky windows plugin for
xoblite / Blackbox for Windows that requires no tiresome manual editing of configuration files - just enable the built-in learning mode! If you later want to tweak the setting for a specific application you can change it easily using the "sticky list" submenu. Why make it harder? =]

Please note that Glue 1.0 requires xoblite bb2 RC3
or later / Blackbox for Windows 0.0.90 or later.

Enjoy! :D

Today is yesterday's tomorrow.

qwilk

revision history
Glue 1.0 (2005-12-31) / qwilk
  • Original release
  • future releases?
  • [your wish goes here - send me your ideas! :D ]
  • license information
    © 2005 Karl-Henrik Henriksson [qwilk]

    GLUE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. THE AUTHOR DISCLAIM ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL THE AUTHOR OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF THE AUTHOR OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

    initial setup

    If you are using xoblite:
    To load Glue, you simply need to select Load plugin... in the Configuration/Plugins menu
    (this item is also available in the Slit menu), locate Glue.dll, and click "Open". Simple, eh? :)

    If you are using Blackbox for Windows:
    To load Glue you need to add the relative path of the plugin (from your Blackbox directory) to the Blackbox configuration file plugins.rc (located in the Blackbox directory). For example, if you installed Blackbox into c:\Blackbox, and Glue.dll is located in c:\Blackbox\plugins\Glue, you should add the line...

    plugins\Glue\Glue.dll

    ...to plugins.rc.

    how to use glue...

    All configuration is performed using the right-click plugin menu (it should be pretty self-explanatory what each menu item does). For additional information, see below! :)

    glue.ini settings

    I have included a default sticky windows configuration file - glue.ini - in the .zip, but if a configuration file for some reason (e.g. you deleted it! <g>) can not be found at startup (Glue will first search for it in the UserAppData/Blackbox directory, then in the same directory as the plugin, then in the Blackbox directory), Glue will automatically create one for you in the same directory as the plugin. The syntax used is very simple:

    application1.exe: false
    application2.exe: true

    ...i.e. the name of the .exe followed by a colon, then a boolean specifying if the application should be made sticky (=true) or not (=false). However, I do not refer to Glue as an "advanced sticky windows plugin" for nothing: You don't have to bother with this file at all! =] Just enable Glue's built-in learning mode, and it will automatically ask you if an application should be made sticky or not when one is launched. When you are satisfied with your setup, exit learning mode. And if you later want to tweak the setting for a specific application, no problem, you can change it easily using the "sticky list" submenu. No manual editing of configuration files is necessary! :D

    glue.rc settings

    I have included a default configuration file - glue.rc - in the .zip, but if a configuration file for some reason (see above!) can not be found at startup (Glue will first search for it in the UserAppData/Blackbox directory, then in the same directory as the plugin, then in the Blackbox directory), Glue will automatically create one for you in the same directory as the plugin. Normally, you do not need to edit this file manually - use the right-click plugin menu instead!

    glue.x: 0    X position
    glue.y: 0    Y position
    glue.alwaysontop: false    AlwaysOnTop?
    glue.snapwindow: true    Snap Glue window to screen edges?
    glue.transparency.alpha: 255    Alpha transparency value (value 1-255; 255 being opaque)
    glue.dockedtoslit: false    Docked to the slit? (i.e. slit mode if true, plugin mode if false)
    glue.hidewindow: false    Hide the Glue window? (i.e. control Glue using bro@ms only)
    glue.learningmode: false    Should learning mode be enabled?

    Finally, you can control Glue using the following broadcast messages (bro@ms)...

    @Glue ShowMenu
    @Glue ToggleLearningMode
    @Glue ToggleSticky <executable>
    @Glue ToggleWindow
    @Glue ToggleAlwaysOnTop
    @Glue ToggleSnapWindowToEdge
    @Glue ToggleDockedToSlit
    @Glue SetTransparency <alpha>

    ...which are equivalent to the items in the Glue plugin menu. Hmm, I guess that's it! :D